<Project Sdk="Microsoft.NET.Sdk">

  <PropertyGroup>
    <TargetFrameworks>$(NetCoreAppCurrent)-windows;$(NetCoreAppCurrent)</TargetFrameworks>
    <IsPartialFacadeAssembly>true</IsPartialFacadeAssembly>
    <AllowUnsafeBlocks>true</AllowUnsafeBlocks>
    <NoWarn>$(NoWarn);CA1805;IDE0059;CS3016</NoWarn>
    <UseCompilerGeneratedDocXmlFile>false</UseCompilerGeneratedDocXmlFile>
  </PropertyGroup>

  <ItemGroup>
    <Compile Include="System\Transactions\CommittableTransaction.cs" />
    <Compile Include="System\Transactions\DependentTransaction.cs" />
    <Compile Include="System\Transactions\DurableEnlistmentState.cs" />
    <Compile Include="System\Transactions\EnterpriseServices.cs" />
    <Compile Include="System\Transactions\Enlistment.cs" />
    <Compile Include="System\Transactions\EnlistmentState.cs" />
    <Compile Include="System\Transactions\EnlistmentTraceIdentifier.cs" />
    <Compile Include="System\Transactions\IDtcTransaction.cs" />
    <Compile Include="System\Transactions\IEnlistmentNotification.cs" />
    <Compile Include="System\Transactions\InternalTransaction.cs" />
    <Compile Include="System\Transactions\IPromotableSinglePhaseNotification.cs" />
    <Compile Include="System\Transactions\ISimpleTransactionSuperior.cs" />
    <Compile Include="System\Transactions\ISinglePhaseNotification.cs" />
    <Compile Include="System\Transactions\ITransactionPromoter.cs" />
    <Compile Include="System\Transactions\PreparingEnlistment.cs" />
    <Compile Include="System\Transactions\SinglePhaseEnlistment.cs" />
    <Compile Include="System\Transactions\SubordinateTransaction.cs" />
    <Compile Include="System\Transactions\Transaction.cs" />
    <Compile Include="System\Transactions\TransactionException.cs" />
    <Compile Include="System\Transactions\TransactionInformation.cs" />
    <Compile Include="System\Transactions\TransactionManager.cs" />
    <Compile Include="System\Transactions\TransactionOptions.cs" />
    <Compile Include="System\Transactions\TransactionScope.cs" />
    <Compile Include="System\Transactions\TransactionState.cs" />
    <Compile Include="System\Transactions\TransactionTable.cs" />
    <Compile Include="System\Transactions\TransactionTraceIdentifier.cs" />
    <Compile Include="System\Transactions\TransactionsEtwProvider.cs" />
    <Compile Include="System\Transactions\VolatileEnlistmentMultiplexing.cs" />
    <Compile Include="System\Transactions\VolatileEnlistmentState.cs" />
    <Compile Include="System\Transactions\Configuration\AppSettings.cs" />
    <Compile Include="System\Transactions\Configuration\ConfigurationStrings.cs" />
    <Compile Include="System\Transactions\Configuration\DefaultSettingsSection.cs" />
    <Compile Include="System\Transactions\Configuration\MachineSettingsSection.cs" />
    <Compile Include="$(CommonPath)System\Obsoletions.cs" Link="Common\System\Obsoletions.cs" />
  </ItemGroup>

  <ItemGroup Condition="'$(TargetPlatformIdentifier)' == 'windows'">
    <Compile Include="$(CommonPath)Interop\Windows\Interop.Libraries.cs" Link="Common\Interop\Windows\Interop.Libraries.cs" />
    <Compile Include="$(CommonPath)DisableRuntimeMarshalling.cs" Link="Common\DisableRuntimeMarshalling.cs" />
    <Compile Include="System\Transactions\DtcProxyShim\DtcInterfaces\IPrepareInfo.cs" />
    <Compile Include="System\Transactions\DtcProxyShim\DtcInterfaces\IResourceManagerFactory2.cs" />
    <Compile Include="System\Transactions\DtcProxyShim\DtcInterfaces\IResourceManager.cs" />
    <Compile Include="System\Transactions\DtcProxyShim\DtcInterfaces\IResourceManagerSink.cs" />
    <Compile Include="System\Transactions\DtcProxyShim\DtcInterfaces\ITmNodeName.cs" />
    <Compile Include="System\Transactions\DtcProxyShim\DtcInterfaces\ITransaction.cs" />
    <Compile Include="System\Transactions\DtcProxyShim\DtcInterfaces\ITransactionCloner.cs" />
    <Compile Include="System\Transactions\DtcProxyShim\DtcInterfaces\ITransactionExport.cs" />
    <Compile Include="System\Transactions\DtcProxyShim\DtcInterfaces\ITransactionExportFactory.cs" />
    <Compile Include="System\Transactions\DtcProxyShim\DtcInterfaces\ITransactionOptions.cs" />
    <Compile Include="System\Transactions\DtcProxyShim\DtcInterfaces\ITransactionDispenser.cs" />
    <Compile Include="System\Transactions\DtcProxyShim\DtcInterfaces\ITransactionEnlistmentAsync.cs" />
    <Compile Include="System\Transactions\DtcProxyShim\DtcInterfaces\ITransactionImport.cs" />
    <Compile Include="System\Transactions\DtcProxyShim\DtcInterfaces\ITransactionImportWhereabouts.cs" />
    <Compile Include="System\Transactions\DtcProxyShim\DtcInterfaces\ITransactionOutcomeEvents.cs" />
    <Compile Include="System\Transactions\DtcProxyShim\DtcInterfaces\ITransactionPhase0EnlistmentAsync.cs" />
    <Compile Include="System\Transactions\DtcProxyShim\DtcInterfaces\ITransactionPhase0Factory.cs" />
    <Compile Include="System\Transactions\DtcProxyShim\DtcInterfaces\ITransactionPhase0NotifyAsync.cs" />
    <Compile Include="System\Transactions\DtcProxyShim\DtcInterfaces\ITransactionReceiver.cs" />
    <Compile Include="System\Transactions\DtcProxyShim\DtcInterfaces\ITransactionReceiverFactory.cs" />
    <Compile Include="System\Transactions\DtcProxyShim\DtcInterfaces\ITransactionResourceAsync.cs" />
    <Compile Include="System\Transactions\DtcProxyShim\DtcInterfaces\ITransactionTransmitter.cs" />
    <Compile Include="System\Transactions\DtcProxyShim\DtcInterfaces\ITransactionTransmitterFactory.cs" />
    <Compile Include="System\Transactions\DtcProxyShim\DtcInterfaces\ITransactionVoterBallotAsync2.cs" />
    <Compile Include="System\Transactions\DtcProxyShim\DtcInterfaces\ITransactionVoterFactory2.cs" />
    <Compile Include="System\Transactions\DtcProxyShim\DtcInterfaces\ITransactionVoterNotifyAsync2.cs" />
    <Compile Include="System\Transactions\DtcProxyShim\DtcProxyShimFactory.cs" />
    <Compile Include="System\Transactions\DtcProxyShim\EnlistmentNotifyShim.cs" />
    <Compile Include="System\Transactions\DtcProxyShim\EnlistmentShim.cs" />
    <Compile Include="System\Transactions\DtcProxyShim\Guids.cs" />
    <Compile Include="System\Transactions\DtcProxyShim\NativeEnums.cs" />
    <Compile Include="System\Transactions\DtcProxyShim\NotificationShimBase.cs" />
    <Compile Include="System\Transactions\DtcProxyShim\OletxHelper.cs" />
    <Compile Include="System\Transactions\DtcProxyShim\OletxXactTransInfo.cs" />
    <Compile Include="System\Transactions\DtcProxyShim\Phase0NotifyShim.cs" />
    <Compile Include="System\Transactions\DtcProxyShim\Phase0Shim.cs" />
    <Compile Include="System\Transactions\DtcProxyShim\ResourceManagerNotifyShim.cs" />
    <Compile Include="System\Transactions\DtcProxyShim\ResourceManagerShim.cs" />
    <Compile Include="System\Transactions\DtcProxyShim\TransactionNotifyShim.cs" />
    <Compile Include="System\Transactions\DtcProxyShim\TransactionOutcome.cs" />
    <Compile Include="System\Transactions\DtcProxyShim\TransactionShim.cs" />
    <Compile Include="System\Transactions\DtcProxyShim\VoterNotifyShim.cs" />
    <Compile Include="System\Transactions\DtcProxyShim\VoterShim.cs" />
    <Compile Include="System\Transactions\DtcProxyShim\Xactopt.cs" />
    <Compile Include="System\Transactions\Oletx\DtcTransactionManager.cs" />
    <Compile Include="System\Transactions\Oletx\OletxCommittableTransaction.cs" />
    <Compile Include="System\Transactions\Oletx\OletxDependentTransaction.cs" />
    <Compile Include="System\Transactions\Oletx\OletxEnlistment.cs" />
    <Compile Include="System\Transactions\Oletx\OletxResourceManager.cs" />
    <Compile Include="System\Transactions\Oletx\OletxTransaction.cs" />
    <Compile Include="System\Transactions\Oletx\OletxTransactionManager.cs" />
    <Compile Include="System\Transactions\Oletx\OletxVolatileEnlistment.cs" />
    <Compile Include="System\Transactions\TransactionInterop.cs" />
  </ItemGroup>

  <ItemGroup Condition="'$(TargetPlatformIdentifier)' != 'windows'">
    <Compile Include="System\Transactions\TransactionInteropNonWindows.cs" />
    <Compile Include="System\Transactions\NonWindowsUnsupported.cs" />
  </ItemGroup>

  <ItemGroup>
    <Reference Include="System.Collections" />
    <Reference Include="System.Collections.Concurrent" />
    <Reference Include="System.ComponentModel" />
    <Reference Include="System.ComponentModel.Primitives" />
    <Reference Include="System.Diagnostics.Process" />
    <Reference Include="System.Diagnostics.TraceSource" />
    <Reference Include="System.Diagnostics.Tracing" />
    <Reference Include="System.Memory" />
    <Reference Include="System.Runtime" />
    <Reference Include="System.Runtime.InteropServices" />
    <Reference Include="System.Threading" />
    <Reference Include="System.Threading.Thread" />
    <Reference Include="System.Threading.ThreadPool" />
    <Reference Include="System.Xml.ReaderWriter" />
  </ItemGroup>

</Project>
